#include "stdio.h"
#include "string.h"
#include "stdlib.h"

void w_write(char name[][20])
{
    printf("输入3个文件的名字\n");
    for (size_t i = 0; i < 3; i++)
    {
        printf("输入%ld个文件的名字：", i + 1);
        scanf("%s", name[i]);
        printf("\n");
    }
}

//清空file1
void file_cpy(const char *dest, const char *src)
{
    // =================== 打开文件 ===================
    FILE *src_file = fopen(src, "r");
    FILE *dest_file = fopen(dest, "w+");

    if (src_file == NULL || dest_file == NULL)
    {
        printf("无法打开文件");
        return;
    }

    char ch = 0;

    while ((ch = fgetc(src_file)) != EOF)
    {
        fputc(ch, dest_file);
    }

    // =================== 关闭文件 ===================
    fclose(src_file);
    fclose(dest_file);
}

int main(int argc, char const *argv[])
{
    char file_i[3][20]; // 假设文件名最大长度为20
    w_write(file_i);
    for (size_t i = 0; i < 3; i++)
    {
        FILE *fp = fopen(file_i[i], "w");
        if (fp == NULL)
        {
            printf("无法打开文件！");
            return 1;
        }
    }

    // 将第三个文件追加写到第一个文件中
    file_cpy(file_i[0], file_i[2]);

    return 0;
}
